Systems are known to process video from digital survalence cameras to automatically detect motion. Current video motion detection algorithms are often based on foreground extraction techniques.
A background image is usually maintained to compare with the incoming video frames. The foreground object then can be obtained by subtracting a frame by the background image.
Differentiation between adjacent frames can also be used. However, such methods have disadvantages. Shadows, or light spots are often be detected as the foreground objects, because they exhibit obvious differences from the background image. Reflections from glossy surfaces exhibit the same types of problems as they would also change the value of respective pixels in frame.
Many efforts have been devoted to solving these problems. Attempted solutions try to detect changes of texture patterns between a selected video frame and the background image since shadows and light spots only change the overall luminance of the objects, but don't change the patterns on the surface of the objects. Such methods work acceptably with objects having abundant texture patterns. However, they still have problems with single colored objects such as a white wall.